Hardware designs, such as circuit boards, controllers, and server systems, have long utilized debugging tools to assist with the development process. Often despite best efforts, a hardware design does not work as intended, and will have to be corrected, or debugged. The debugging process typically involves iterating through each step of an implementation, until a point where a failure is apparent. In this fashion, debugging assists in determining to what point the design works, and may give an indication of how the failure can be corrected. Even in very basic circuit designs, some debug mechanism is often implemented.